The transmission and storage of video are important for many applications and such usage has gained popularity worldwide. However, the size of raw video sequences can be quite large. For example, raw video data can be around 448 gigabytes for a high-definition movie. Further, raw video data can include redundant information, such as, for example, temporal domain redundancy, spatial domain redundancy, and/or statistical redundancy. Thus, video compression is utilized in order to reduce the size of raw video sequences.
Various video coding standards, such as (Moving Pictures Experts Group) MPEG-1/2/4 and (International Telecommunication Union (ITU) Telecommunication Standardization Sector) ITU-T H.261/263/264, have been developed in an attempt to achieve efficient compression of video sequences. For example, various video coding standards achieve compression by exploiting temporal redundancy using motion estimation and compensation. Some video coding standards employ spatial redundancy using discrete cosine transform. Other video coding standards employ statistical redundancy using entropy coding. Further video coding standards employ perceptual irrelevancy using quantization in an attempt to compress video sequences.
The various techniques for video compression, however, have a corresponding tradeoff, which is increased computational complexity and encoding time. For example, integer motion estimation can consume close to 60% of encoder time. In another example, if fractional motion estimation is utilized, it can consume close to 90% of encoder time.
The above-described deficiencies of today's video processing techniques are merely intended to provide an overview of some of the problems of conventional systems, and are not intended to be exhaustive. Other problems with conventional systems and corresponding benefits of the various non-limiting embodiments described herein may become further apparent upon review of the following description.